home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / machserver / 1.098 / mach / ds5000.md / machInt.h < prev    next >
C/C++ Source or Header  |  1991-03-05  |  3KB  |  76 lines

  1. /*
  2.  * machInt.h --
  3.  *
  4.  *    This file defines things that are shared between the "mach" modules
  5.  *    but aren't used by the rest of Sprite.
  6.  *
  7.  *    Copyright (C) 1989 Digital Equipment Corporation.
  8.  *    Permission to use, copy, modify, and distribute this software and
  9.  *    its documentation for any purpose and without fee is hereby granted,
  10.  *    provided that the above copyright notice appears in all copies.
  11.  *    Digital Equipment Corporation makes no representations about the
  12.  *    suitability of this software for any purpose.  It is provided "as is"
  13.  *    without express or implied warranty.
  14.  *
  15.  * $Header: /sprite/src/kernel/mach/ds5000.md/RCS/machInt.h,v 1.2 91/03/05 15:06:38 jhh Exp $ SPRITE (DECWRL)
  16.  */
  17.  
  18. #ifndef _MACHINT
  19. #define _MACHINT
  20.  
  21. #include <machMon.h>
  22. #include <mach.h>
  23. #include <machConst.h>
  24. #include <machAddrs.h>
  25.  
  26. /*
  27.  * The bounds of the code that copies arguments from the user stack to
  28.  * the kernel stack.
  29.  */
  30. extern void MachFetchArgs _ARGS_((void));
  31. extern void MachFetchArgsEnd _ARGS_((void));
  32.  
  33. #ifdef notdef
  34. /*
  35.  * Copy of the boot parameter structure.
  36.  */
  37. extern     MachStringTable    machMonBootParam;
  38. #endif
  39.  
  40. /*
  41.  * Internal variables.
  42.  */
  43. extern Mach_State *machCurStatePtr;
  44. extern Mach_State *machFPCurStatePtr;
  45.  
  46. /*
  47.  * Internal functions.
  48.  */
  49. extern Boolean MachUserReturn _ARGS_((register Proc_ControlBlock *procPtr));
  50. /*
  51.  * These sorta take an argument and sorta don't.  The user's stack pointer is
  52.  * in register t2.
  53.  */
  54. extern void             MachException _ARGS_((void));
  55. extern void            MachEndException _ARGS_((void));
  56. extern ReturnStatus         MachFetch0Args _ARGS_((void));
  57. extern ReturnStatus         MachFetch1Arg _ARGS_((void));
  58. extern ReturnStatus         MachFetch2Args _ARGS_((void));
  59. extern ReturnStatus         MachFetch3Args _ARGS_((void));
  60. extern ReturnStatus         MachFetch4Args _ARGS_((void));
  61. extern ReturnStatus         MachFetch5Args _ARGS_((void));
  62. extern ReturnStatus         MachFetch6Args _ARGS_((void));
  63.  
  64. extern void        MachSysCall _ARGS_((void));
  65. extern unsigned *MachEmulateBranch _ARGS_((unsigned *regsPtr, Address instPC, unsigned fpcCSR, Boolean allowNonBranch));
  66.  
  67.  
  68. extern void Mach_SendSignal _ARGS_((int sigType));
  69.  
  70. extern ReturnStatus CvtSpriteToUnixAtts _ARGS_((register Fs_Attributes *spriteAttsPtr, register struct stat *unixAttsPtr));
  71. extern Boolean MachUserExceptionHandler _ARGS_((unsigned statusReg, unsigned causeReg, Address badVaddr, Address pc));
  72. extern int MachKernelExceptionHandler _ARGS_((unsigned statusReg, unsigned causeReg, Address badVaddr, Address pc));
  73. extern void        MachProbeEnd _ARGS_((void));
  74.  
  75. #endif /* _MACHINT */
  76.